//#define  _CRT_SECURE_NO_WARNINGS
//#include <iostream>
//#include <vector>
//using namespace std;
//vector<vector<char>> board;
//vector<vector<bool>> vis;
//int n;
//int dx[4] = { 0, 0, 1, -1 };
//int dy[4] = { 1, -1, 0, 0 };
//int ret = 0;
//
//void dfs(int i, int j, int sum)
//{
//	for (int k = 0; k < 4; k++)
//	{
//		int x = i + dx[k], y = j + dy[k];
//		if(x >= 0 && x < n && y >= 0 && y < n && board[x][y] == '#' && !vis[x][y])
//		{
//			sum++;
//			vis[x][y] = true;
//			ret = max(ret, sum);
//			dfs(x, y, sum);
//			sum--;
//			vis[x][y] = false;
//		}
//	}
//}
//int main()
//{
//	int t;
//	cin >> t;
//	for(int i = 1; i <= t; i++)
//	{
//		cin >> n;
//		board.resize(n, vector<char>(n));
//		vis.resize(n, vector<bool>(n));
//		for (int i = 0; i < n; i++)
//			for (int j = 0; j < n; j++)
//				cin >> board[i][j];
//		int result = 0;
//		for (int i = 0; i < n; i++)
//			for (int j = 0; j < n; j++)
//				if (board[i][j] == '#') 
//				{
//					vis[i][j] = true;
//					ret = 0;
//					dfs(i, j, 1);
//					result = max(ret, result);
//					vis[i][j] = false;
//				}
//		cout << "Case " << i << ": " << result << endl;
//
//	}
//} 